This invention relates to computer programming and networking, and more particularly to automated methods and computer apparatus for determining topology information including a site, connected networks, and server address for a computer within a message queuing network.
Users of computers desire computer systems that require minimal manual interaction to perform systems management functions. Moreover, in this age of electronic communication, a large number of computers are connected to a computer network which allows them to practice numerous network services such as email and electronic transactions. To be able to communicate over such a network, a networked computer requires a network address as well as information about other computers and intervening sites. These values, in many networks, have some relationship to the physical topology of the network as well as the networking protocols used by various computer nodes located therein.
Given the mobility of laptop personal computers and related devices, a user may connect the same computer to a network at a plurality of different physical locations, or connect to a plurality of different networks. These users also desire the computer""s network software and applications to function properly without any user reconfiguration. For instance, a user might connect a laptop computer to a LAN at the office using TCP/IP protocol. This same laptop computer might be connected to the same or different network using Remote Access Services (RAS) when the user is traveling or at home. In some networks, the network address of the computer will change depending on the location of its connection to the network. As such, when a computer is moved, the network address of the computer changes.
In addition, some computers communicate via message queuing systems. These computers pass messages asynchronously between computers where the routing of such messages is typically a function of both a physical location and the network protocols supported by the computer and any intermediary computer systems. For efficient routing in such a message queuing network, the computer must know its relative physical location as well as what computers the computer can directly communicate. In previous systems, the user was required to manually supply this information when the computer was moved from one location to another, or when the computer""s underlying network transport protocols or configuration changed. Thus, message queuing system users are desirous of a mechanism whereby this information is automatically updated.
According to the invention, an automated method and apparatus are provided for automatically determining network topology information for a message queuing computer. This topology information typically includes the address and routing information for the computer within a message queuing system, where the address typically comprises a site and/or connected network as described herein. In one embodiment of the present invention, full automatic recognition is supported for a message queuing system client computer. Such a client computer maintains a list of supported transport protocols and message queuing configuration information in a network information registry within the client computer""s persistent memory. Upon initialization of the message queuing software, such as during the booting process of the client computer, the client computer determines if there have been any changes in its transport network. Additionally, this automatic detection algorithm could be executed at any time, such as after or in response to the occurrence of some system event, such as a change in network configuration (e.g., dialing into a different RAS server). These changes might relate to the network protocols, interfaces and/or addresses currently being supported or enabled. If there is such a network change, then the client computer broadcasts a client request packet from each network address and receives results from one or more server computers located on the same network as the client computer. If there is no answer, then datagram messages are sent to a previously known DS server. If a server responds, then the client computer extracts its topology configuration from the received server reply packet, which typically includes a site connected network, and a list of directory service servers. The client computer then updates a directory service server and its cache registry with its topology; and the client computer has successfully detected its new message queuing system topology.
In another configuration in accordance with the present invention, a more limited automatic detection mechanism is employed for xe2x80x9cserverxe2x80x9d computers. As the configuration and location of certain message queuing computers (i.e., a message queuing server) are intended to be static, a limited checking automatic detection mechanism is employed. In this configuration, multiple changes to a supported network protocol or an addition or deletion of a network interface is defined as an administrative event requiring operator intervention. In the case of a single network change to a protocol, such as a replacement of one IP address and/or a replacement of one IPX address, automatic detection is performed for the server.